4.1 仿真流程
1、创建.v文件,命名为led_tb。

2、将测试代码输入测试文件中,代码如下:
`timescale 1ns/100ps
module led_tb();
reg sys_clk;
wire [2:0] RGB_led;
initial sys_clk=0;
always #10 sys_clk=~sys_clk;
led u_led(
.sys_clk (sys_clk),
.RGB_led (RGB_led)
);
endmodule
3、这里需要注意测试文件只是用来仿真的,很多语句是不可综合的,所以要设置文件的属性。右击工程目录里的led_tb文件,选择Prooerties,

会弹出一个属性窗口,弹出一个属性窗口,把测试文件属性值改为simulation表示只做仿真。

4、选择菜单栏Tools→Simulation Wizard或 工具栏中Simulation Wizard按钮,进入仿真设置界面。

5、直接点击Next。

6、创建仿真文件的工程及其路径,选择仿真的阶段,这里是功能仿真,所以只能选RTL级。如果没有led_tb这个文件夹,点击Next,然后点击Yes会自动创建。


7、选择添加或者删除所要仿真的源文件和测试文件,点击Next。

8、仿真工程列表,如果有多个测试文件可以选择顶层测试文件。

9、仿真工程项目创建完成,如果下方选项确定,点击Finish,将会打开Modelsim。

10、选择Compile→Compile All,等待完成后工程目录的Status状态会变成绿色的√。


11、选择菜单栏的Simulate→Start Simulation,


12、右击需要观察的信号,点击Add Wave,这样就将对应信号添加至Wave窗口。

13、弹出的Wave窗口如下,选择工具栏中Restart按钮,在弹出的Restart窗口点击OK,复位仿真Wave窗口。

14、修改工具栏中仿真时间,点击工具栏中Run按钮,进行仿真,仿真波形如下,仿真完成。(由于例程是三色灯一秒切换一个颜色,而仿真时间太短,所以RGB_led信号不会切换。)
